package com.wosai.medical.hospital.demo.controller.inpatient.response;

import io.swagger.annotations.ApiModel;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;

/**
 * @desc
 * @auther 韦湘平
 * @date 2020/2/29 5:28 下午
 */

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@ApiModel("住院记录")
public class Record implements Serializable {
    /**
     * 住院代码(患者住院唯一标识)
     */
    private String code;

    /**
     * 住院号
     */
    private String number;

    /**
     * 住院科室
     */
    private Dept dept;

    /**
     * 主管医生
     */
    private Doctor doctor;

    /**
     * 住院病房
     */
    private Area area;

    /**
     * 状态(0:住院中,1:已出院)
     */
    private Integer status;
    /**
     * 入院日期(yyyy-MM-dd)
     */
    private String inDate;

    /**
     * 出院日期(yyyy-MM-dd)[可空]
     */
    private String outDate;

    /**
     * 本次住院总费用
     */
    private Long totalAmount;

    /**
     * 说明备注[可空]
     */
    private String description;


    @Data
    @Builder
    @ApiModel("医生")
    public static class Doctor implements Serializable {
        /**
         * 科室分类代码
         */
        private String code;
        /**
         * 科室分类名称
         */
        private String name;
    }

    @Data
    @Builder
    @ApiModel("科室")
    public static class Dept implements Serializable {
        /**
         * 科室分类代码
         */
        private String code;
        /**
         * 科室分类名称
         */
        private String name;

    }

    @Data
    @Builder
    @ApiModel("住院病房")
    public static class Area implements Serializable {
        /**
         * 住院病房ID
         */
        private String code;
        /**
         * 住院病房名称
         */
        private String name;

    }

}
